package com.taxshare.purchaser.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.taxshare.mybatis.entity.BaseEntity;
import com.taxshare.purchaser.constant.TableConstant;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;

/**
 * @author YANG
 * @ClassName: CheckLogEntity
 * @Description:发票查验日志表
 * @date 2021-04-06
 */
@Data
@ApiModel(description = "发票查验日志")
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName(TableConstant.T_PURCHASER_CHECK_LOG)
public class CheckLogEntity extends BaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("主键")
    @TableId("uuid")
    private String uuid;

    @ApiModelProperty("关联ID")
    @TableField("link_id")
    private String linkId;

    @ApiModelProperty("发票代码")
    @TableField("invoice_code")
    private String invoiceCode;

    @ApiModelProperty("发票号码")
    @TableField("invoice_no")
    private String invoiceNo;

    @ApiModelProperty("开票日期")
    @TableField("invoice_date")
    private String invoiceDate;

    @ApiModelProperty("购方名称")
    @TableField("purchase_name")
    private String purchaserName;

    @ApiModelProperty("购方税号")
    @TableField("purchaser_tax_no")
    private String purchaserTaxNo;

    @ApiModelProperty("购方地址电话")
    @TableField("purchaser_addr_phone")
    private String purchaserAddrPhone;

    @ApiModelProperty("购方银行账户")
    @TableField("purchaser_brank")
    private String purchaserBrank;

    @ApiModelProperty("销方名称")
    @TableField("seller_name")
    private String sellerName;

    @ApiModelProperty("销方税号")
    @TableField("seller_tax_no")
    private String sellerTaxNo;

    @ApiModelProperty("销方地址电话")
    @TableField("seller_addr_phone")
    private String sellerAddrPhone;

    @ApiModelProperty("销方银行账户")
    @TableField("seller_brank")
    private String sellerBrank;

    @ApiModelProperty("备注")
    @TableField("remark")
    private String remark;

    @ApiModelProperty("机器编号")
    @TableField("machine_code")
    private String machineCode;

    @ApiModelProperty("发票类型")
    @TableField("invoice_type")
    private String invoiceType;

    @ApiModelProperty("检验码")
    @TableField("check_code")
    private String checkCode;

    @ApiModelProperty("金额（不含税）")
    @TableField("amount_with_out_tax")
    private String amountWithOutTax;

    @ApiModelProperty("查验状态")
    @TableField("check_status")
    private String checkStatus;

    @ApiModelProperty("查验结果")
    @TableField("check_result")
    private String checkResult;

    @ApiModelProperty("规则状态\"1:审核成功  2:审核失败  3:待审核\"")
    @TableField("rules_status")
    private String rulesStatus;

    @ApiModelProperty("采集方式 1 图片上传 2 手工录入")
    @TableField("data_source")
    private String dataSource;

    @ApiModelProperty("规则名称")
    @TableField("rules_name")
    private String rulesName;

    @ApiModelProperty("收款员(卷票字段)")
    @TableField("cashier")
    private String cashier;

    @ApiModelProperty("税额")
    @TableField("tax_amount")
    private String taxAmount;

    @ApiModelProperty("查验次数")
    @TableField("check_number")
    private int checkNumber;

    @ApiModelProperty("含税金额")
    @TableField("amount_with_tax")
    private String amountWithTax;
}